home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / os2 / adaptor.zip / ADAPT.ZIP / adaptor / src / include / shapes.h < prev    next >
C/C++ Source or Header  |  1994-01-03  |  2KB  |  56 lines

  1. # ifndef yyShapes
  2. # define yyShapes
  3.  
  4. # if defined __STDC__ | defined __cplusplus
  5. # define ARGS(parameters)    parameters
  6. # else
  7. # define ARGS(parameters)    ()
  8. # endif
  9.  
  10. # ifndef bool
  11. # define bool char
  12. # endif
  13.  
  14. # include "Tree.h"
  15. # include "Definiti.h"
  16.  
  17. # line 56 "Shapes.puma"
  18.  
  19.  
  20. /*********************************************************************
  21. *                                                                    * 
  22. *    struct  shape :   contains the bounds of array expressions      *
  23. *                                                                    *
  24. *     bounds[0] : ug1:og1:str1                                       *
  25. *     bounds[1] : ug2:og2:str2                                       *
  26. *       ....                                                         *
  27. *     bounds[n-1] : ugn:ogn:strn                                     *
  28. *                                                                    *
  29. *********************************************************************/
  30.  
  31. typedef struct
  32.  { int rank;
  33.    int perm [MAX_DIMENSIONS];      /* permutation vector used in AdaptF77 */
  34.    tTree bounds [MAX_DIMENSIONS] [3]; 
  35.  } struct_shape;
  36.  
  37. typedef struct_shape* shape;
  38.  
  39.  
  40.  
  41. extern void SetAllocateShapes ARGS((tTree t));
  42. extern void ResetDeallocateShapes ARGS((tTree t));
  43. extern void SetCurrentShape ARGS((tTree t));
  44. extern void DelCurrentShape ARGS((tTree t));
  45. extern void GetCurrentShape ARGS((tTree t, shape s));
  46. extern void PrintCurrentShape ARGS((shape s));
  47. extern bool IsWholeVar ARGS((tTree t));
  48. extern tTree NormalizeShape ARGS((tTree t));
  49. extern tTree MakeFullShape ARGS((tTree t));
  50. extern bool IsContiguousSection ARGS((tTree t));
  51.  
  52. extern void BeginShapes ();
  53. extern void CloseShapes ();
  54.  
  55. # endif
  56.